package com.wicket.okrframework.integration;

import com.wicket.okrframework.common.ro.OkrResult;
import com.wicket.okrframework.integration.dto.*;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;

/**
 * @author ：
 * @date ：
 *
 *
 * @version 1.0
 */
@FeignClient("framework")
public interface FwBaseStaffingClient {
    /**
   * D1-3新增编制
   */
    @PostMapping("/base/staffing/addStaffing")
    public OkrResult<AddStaffingRespDto> addStaffing(AddStaffingReqDto reqDTO);

    /**
   * D1-3批量补充编制
   */
    @PostMapping("/base/staffing/batchUpdateStaffing")
    public OkrResult<BatchUpdateStaffingRespDto> batchUpdateStaffing(BatchUpdateStaffingReqDto reqDTO);

    /**
   * D1-3补充编制
   */
    @PostMapping("/base/staffing/updateStaffing")
    public OkrResult<UpdateStaffingRespDto> updateStaffing(UpdateStaffingReqDto reqDTO);

    /**
   * D1-3查询编制账户详情
   */
    @PostMapping("/base/staffing/queryStaffingAccountDetail")
    public OkrResult<QueryStaffingAccountDetailRespDto> queryStaffingAccountDetail(QueryStaffingAccountDetailReqDto reqDTO);

    /**
   * D1-3批量新增编制
   */
    @PostMapping("/base/staffing/batchAddStaffing")
    public OkrResult<BatchAddStaffingRespDto> batchAddStaffing(BatchAddStaffingReqDto reqDTO);

    /**
   * D1-3存档编制
   */
    @PostMapping("/base/staffing/archiveStaffing")
    public OkrResult<ArchiveStaffingRespDto> archiveStaffing(ArchiveStaffingReqDto reqDTO);

    /**
   * D1-3发布编制
   */
    @PostMapping("/base/staffing/releaseStaffing")
    public OkrResult<ReleaseStaffingRespDto> releaseStaffing(ReleaseStaffingReqDto reqDTO);

    /**
   * D1-3查询编制列表
   */
    @PostMapping("/base/staffing/queryStaffingList")
    public OkrResult<QueryStaffingListRespDto> queryStaffingList(QueryStaffingListReqDto reqDTO);
/**
   * D1-3执行批次发布编制处理(公共)
   */
    @PostMapping("/base/staffing/implementBatchStaffingHandleCom")
    public OkrResult<ImplementBatchStaffingHandleComRespDto> implementBatchStaffingHandleCom(ImplementBatchStaffingHandleComReqDto reqDTO);
/**
   * D1-执行批次存档编制处理(公共)
   */
    @PostMapping("/base/staffing/implementBatchStaffingArchiveCom")
    public OkrResult<ImplementBatchStaffingArchiveComRespDto> implementBatchStaffingArchiveCom(ImplementBatchStaffingArchiveComReqDto reqDTO);
/**
   * D1-执行批次新增编制处理(公共)
   */
    @PostMapping("/base/staffing/implementBatchStaffingCreateCom")
    public OkrResult<ImplementBatchStaffingCreateComRespDto> implementBatchStaffingCreateCom(ImplementBatchStaffingCreateComReqDto reqDTO);
//
}